Resource data management apparatus and resource data management method

ABSTRACT

A resource data management apparatus includes: at least one resource data package that is associated with a package ID and that stores a resource data set, the resource data set serving as a unit of management; a config data table that stores location information of each resource data package; and a resource data table creation unit that creates a resource data table storing the package ID and the location information of the resource data package, by referring to the resource data package and the config data table.

BACKGROUND

1. Technical Field

The present invention relates to resource data management apparatusesand resource data management methods.

2. Related Art

Thus far, in image forming apparatuses such as printers, a singlelanguage for natural language messages displayed in display panels suchas operation units has been selected from among multiple languages toaccommodate users from various countries, and the messages are thendisplayed in that language.

JP-A-2006-293585 discloses a method in which a message table holdingmenu items in association with message data in various languages isprepared in advance, and message data corresponding to a menu item and alanguage specified through user input is obtained, and then used in adisplay or the like, by referring to the stated message table.

However, the technique disclosed in JPA-2006-293585 has a problem inthat when the message data is to be updated by, for example, replacingthe message data of a given language that corresponds to a single menuitem, adding message data corresponding to the various menu items for anew language, or the like, it is necessary for the designer of themessage table to re-create the message table and replace the existingmessage table, which requires effort and incurs costs.

SUMMARY

An advantage of some aspects of the invention is to provide a novelresource data management apparatus that eliminates the effort and costinvolved when a designer resets resource data such as message data whenthe resource data is to be updated, and that enables the resource datato be updated in a flexible manner.

A resource data management apparatus according to an aspect of theinvention includes: at least one resource data package that isassociated with a package ID and that stores a resource data set, theresource data set serving as a unit of management; a config data tablethat stores location information of each resource data package; and aresource data table creation unit that creates a resource data tablestoring the package ID and the location information of the resource datapackage, by referring to the resource data package and the config datatable.

In a resource data management apparatus according to another aspect ofthe invention, it is preferable for the resource data set to include oneor more data IDs and real data corresponding to the one or more dataIDs.

Furthermore, it is preferable for a resource data management apparatusaccording to another aspect of the invention to further include: areceiving unit that receives a specific package ID and a specific dataID; a first obtainment unit that obtains location information of aresource data package corresponding to the specific package ID byreferring to the created resource data table; a second obtainment unitthat obtains real data corresponding to the specific data ID byreferring to the resource data package corresponding to the specificpackage ID based on the obtained location information of the resourcedata package; and a display unit that displays the obtained real data.

Furthermore, in a resource data management apparatus according toanother aspect of the invention, it is preferable for the resource dataset to further include location information within a package of realdata associated with the data ID; and the second obtainment unit toobtain real data corresponding to the location information within thepackage of the real data associated with the specific data ID byreferring to the resource data package corresponding to the specificpackage ID based on the obtained location information of the resourcedata package.

Furthermore, in a resource data management apparatus according toanother aspect of the invention, it is preferable for the resource datatable creation unit to create the resource data table when the receivingunit has received the specific package ID and the specific data ID, whenthe resource data package has been updated, or when the apparatus hasbeen turned on.

Furthermore, in a resource data management apparatus according toanother aspect of the invention, it is preferable for the resource datapackage to include one or more data IDs and location information of realdata associated with the one or more data IDs, and to furthermore storea second type resource data in which at least one piece of locationinformation from among the pieces of location information of the realdata associated with the one or more data IDs indicates locationinformation of real data included in another resource data package.

Furthermore, in a resource data management apparatus according toanother aspect of the invention, it is preferable for the resource datapackage to be stored in a storage device installed in the apparatusitself or in a storage medium that can be attached to/removed from theapparatus itself.

Furthermore, in a resource data management apparatus according toanother aspect of the invention, it is preferable for the resource dataset to be configured of at least one of a character string data set, afont data set, an icon data set, and a help guidance data set used in animage forming apparatus.

A resource data management method according to another aspect of theinvention includes: storing at least one resource data package thatholds a resource data set serving as a unit of management in associationwith a package ID, and a config data table that holds locationinformation of each of the resource data packages; and creating aresource data table storing the package ID and the location informationof the resource data package by referring to the resource data packageand the config data table.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be described with reference to the accompanyingdrawings, wherein like numbers reference like elements.

FIG. 1 is a block diagram illustrating the hardware configuration of aprinter apparatus according to an embodiment of the invention.

FIG. 2 is a diagram illustrating an example of the overall configurationof a printer apparatus according to an embodiment of the invention.

FIG. 3 is a diagram illustrating an example of the data structure ofconfig data.

FIGS. 4A and 4B are diagrams illustrating examples of package locationinformation and path information.

FIG. 5 is a diagram illustrating an example of the data structure ofresource data.

FIG. 6 is a diagram illustrating an example of character string data.

FIG. 7 is a diagram illustrating an example of a resource data table.

FIG. 8 is a flowchart illustrating the details of processing performedin a resource data management method according to an embodiment of theinvention.

FIG. 9 is a diagram illustrating an example of the data structures offirst resource data and second resource data.

FIG. 10 is a diagram illustrating an example of the overallconfiguration of a printer apparatus according to a variation on anembodiment of the invention.

DESCRIPTION OF EXEMPLARY EMBODIMENTS

An embodiment for implementing the invention will be describedhereinafter with reference to the drawings. Note that in thisembodiment, a printer apparatus will be described as an example of aresource data management apparatus. Furthermore, data regardingcharacter strings (character string data) displayed in an operationpanel or the like of the printer apparatus will be described as anexample of resource data.

FIG. 1 is a block diagram illustrating the hardware configuration of aprinter apparatus 10 according to this embodiment.

As shown in FIG. 1, the printer apparatus 10 includes a printer engine11, an operation panel 12, and a printer controller 13 or the like.However, it should be noted that the operation panel 12 or the printercontroller 13 may be implemented as units that are separate from theprinter apparatus 10.

The printer engine 11 receives print data and executes a printingprocess. The printer engine 11 can be implemented using the samefunctional configuration as the printer engine in a typical printerapparatus such as an ink jet printer, a laser printer, or the like, andthus detailed descriptions thereof will be omitted here.

The operation panel 12 is an input unit for inputting instructions froma user, and is configured of a liquid-crystal display, operationbuttons, and so on. With the operation panel 12, the user can select asingle language from multiple languages by, for example, manipulatingthe operation buttons; furthermore, various types of messages relatingto printer processes can be displayed in the selected language. Notethat as a general rule, the operation panel 12 itself can be providedwith the same functional configuration as that of operation panels usedin past printers.

The printer controller 13 executes various processes for the printerapparatus 10 as a whole, and includes a CPU 131, a memory (storagedevice) 132, a communication interface 133, a user interface 134, and soon. The CPU 131 reads out computer programs stored in the memory 132 andexecutes various types of processes. Under the control of the CPU 131,the memory 132 stores the stated computer programs, various types ofdata obtained during printing processes, and so on, and is, for example,a flash memory (Flash ROM), an HDD, or the like. The communicationinterface 133 is, for example, an interface that exchanges image dataand the like with a host computer, whereas the user interface 134 is aninterface that exchanges message data and the like with the operationpanel 12.

The printer controller 13 has, as a functional configuration, a storageunit 31, a resource data table creation unit 32, a receiving unit 33, afirst obtainment unit 34, a second obtainment unit 35, and a displayunit 36, as shown in FIG. 2. Note that the storage unit 31 can berealized using, for example, the memory 132; meanwhile, the variouselements such as the resource data table creation unit 32 can berealized primarily by, for example, the CPU 131 executing computerprograms stored in the memory 132 and controlling the various pieces ofhardware.

The storage unit 31 stores computer programs for executing various typesof processes, a color conversion table for converting image data intoprint data, config data (a config data table), and multiple pieces ofresource data implemented as packages (resource data packages). Thestorage unit 31 can store the config data of resource data packages,resource data packages themselves, and so on in predetermined locations(addresses) in the Flash ROM (flash memory).

Next, the data structure of the config data will be described withreference to FIGS. 3 to 4B. The config data is data that has informationof the location within the Flash ROM (that is, starting addressinformation) where resource data packages that have been packaged in apredetermined format are stored. Note that in the case where theresource data packages are not located in the Flash ROM and are insteadprovided as resource files within a storage device such as an HDD, theconfig data is data having path information instead of the locationinformation. For example, the config data is configured so as to have,as shown in FIG. 3, a number of pieces of package location information,a number of pieces of package path information, the package locationinformation, and the package path information. The number of pieces ofpackage location information is the same number as there are packagesstored in the Flash ROM, and this information can be realized astwo-byte fixed-length data. Meanwhile, the number of pieces of packagepath information is the number of packages stored in the storage device,and this information can also be realized as two-byte fixed-length data.In the case where the location information of a single package isrealized as eight-byte fixed-length data, the package locationinformation has a data amount equivalent to eight-byte fixed-length datamultiplied by the number of pieces of package location information.Likewise, in the case where the path information of a single package isrealized as 128-byte fixed-length data, the package path information hasa data amount equivalent to 128-byte fixed-length data multiplied by thenumber of pieces of package path information.

FIGS. 4A and 4B are diagrams illustrating specific examples of packagelocation information and path information. FIG. 4A illustrates anexample of the package location information, and is configured of theaddress information (for example, eight bytes) of each of the packages.FIG. 4B, meanwhile, illustrates an example of the package pathinformation, and is configured of the file path character strings (forexample, 128 bytes) contained in each of the packages. Note that in thepackage location information, address information that starts with, forexample, “0x01” can be determined to be an address in the Flash ROM,whereas address information that starts with, for example, “0xFO” can bedetermined to be a path information index.

Next, the data structure of the resource data package will be describedwith reference to FIG. 5. The resource data package stores resource datasets, which are the units of management, in association with packageIDs; as shown in FIG. 5, the resource data package contains a first dataportion having a package ID (PID), a start index, an end index, acharacter string ID (data ID), and location information of characterstring data (real data) associated with a corresponding character stringID, and a second data portion (real data portion) having a number ofcharacters of each piece of character string data and the characterstring data. The package ID is an ID unique to the packaged resourcedata. The start index and end index are information related to thenumber of character string IDs contained in the package. The characterstring ID is an identifier for associating the location information ofthe character string data. The location information of the characterstring data is a relative offset address within the package, or in otherwords, from the start address of the package. The number of charactersof the character string data indicates the data amount of the characterstring data, and is, for example, four-byte fixed-length data; thecharacter string data, meanwhile, is data related to a character stringthat is actually displayed in the operation panel 12.

An example of the character string data is shown in FIG. 6. FIG. 6illustrates character string data, expressing various messages inmultiple languages, in a table. In this case, the character string data(resource data) for each message displayed in the operation panel 12 canbe packaged as a single unit for each language (English, Japanese,Japanese kana).

The resource data table creation unit 32 creates a resource data tablein which package IDs and resource data package location information areassociated with each other. In other words, the resource data tablecreation unit 32 can create the resource data table by referring to theconfig data and obtaining the number of packages and the locationinformation of each package from the storage unit 31, and furthermorereferring to each resource data package from the obtained locationinformation and obtaining the package IDs of those resource datapackages from the storage unit 31. An example of a created resource datatable is illustrated in FIG. 7. Here, the timing at which the resourcedata table creation unit 32 creates the resource data table can be setto, for example, when the receiving unit 33 receives a specific packageID and a specific character string ID (mentioned later), or when aresource data package stored in the storage unit 31 is updated, or whenthe printer apparatus 10 is turned on.

The receiving unit 33 receives a specific package ID and a specificcharacter string ID (data ID). The specific package ID and the specificcharacter string ID are pieces of information inputted by the userthrough the operation panel 12, and specifically are a package ID and acharacter string ID corresponding to a specified language and acharacter string to be displayed.

The first obtainment unit 34 refers to the resource data table createdby the resource data table creation unit 32 and obtains the locationinformation of the resource data package corresponding to the specificpackage ID received by the receiving unit 33. In other words, the firstobtainment unit 34 functions as a resource management unit.

The second obtainment unit 35 accesses the resource data packagecorresponding to the specific package ID stored in the storage unit 31based on the location information of the resource data package obtainedby the first obtainment unit 34, and obtains the corresponding characterstring data from the character string data location informationassociated with the specific data ID. In other words, the secondobtainment unit 35 functions as a character string data processing unit.

The display unit 36 displays the character string data obtained by thesecond obtainment unit 35 in the liquid-crystal display of the operationpanel 12 or the like.

Hereinafter, a resource data management method executed by the printerapparatus 10 will be described with reference to the flowchartillustrated in FIG. 8. Note that it is assumed that a process serving asa previous step to the creation of the resource data table, where, forexample, three pieces of packaged resource data (packages) and configdata as shown in FIG. 7 are stored in advance in the storage unit 31,has been carried out. Note also that the character string ID andcharacter string data in each piece of resource data are those shown inthe table illustrated in FIG. 6. Furthermore, each step (includingpartial steps to which reference numerals are not assigned) can berearranged in any desired order or executed in parallel as long as doingso does not cause conflict in the processing content.

First, the resource data table creation unit 32 creates the resourcedata table in which the package IDs (PIDs) and resource data packagelocation information are associated with each other (step S100). Inother words, the resource data table creation unit 32 can create theresource data table by referring to the config data and obtaining thenumber of packages and the location information of each package from thestorage unit 31, and furthermore referring to each resource data packagefrom the obtained location information and obtaining the package IDs ofthose resource data packages from the storage unit 31. The timing atwhich the resource data table creation unit 32 creates the resource datatable can be set to, for example, when the receiving unit 33 receives aspecific package ID and a specific character string ID (mentionedlater), or when a resource data package stored in the storage unit 31 isupdated, or when the printer apparatus 10 is turned on.

Next, the receiving unit 33 receives the specific package ID and thespecific character string ID (data ID) (step S101). The specific packageID and the specific character string ID are pieces of informationinputted by the user through the operation panel 12, and specificallyare a package ID and a character string ID corresponding to a specifiedlanguage and a character string to be displayed. For example, when anoperation for displaying a message reading “remaining toner amount” inthe language “Japanese” is received through the operation panel 12, thereceiving unit 33 receives the input of a specific package ID“STR_PNL_JPN_NORMAL” and a specific character string ID“IDS_SC_TONER_LIFE” corresponding to the stated language and message.

Next, the first obtainment unit 34 refers to the resource data tablecreated by the resource data table creation unit 32 and obtains thelocation information of the resource data package corresponding to thespecific package ID received by the receiving unit 33 (step S102). Forexample, in the case where the input of the specific package ID“STR_PNL_JPN_NORMAL” has been received, the first obtainment unit 34refers to the resource data table illustrated in FIG. 7 and obtains thecorresponding location information “0x01080000”.

Next, the second obtainment unit 35 accesses the resource data packagecorresponding to the specific package ID stored in the storage unit 31based on the location information of the resource data package obtainedby the first obtainment unit 34, and obtains the corresponding characterstring data from the character string data location informationassociated with the specific character string ID (step S103). Forexample, the second obtainment unit 35 accesses the Flash ROM based onthe location information “0x01080000” and obtains, from thecorresponding Japanese package, the character string data “remainingtoner amount” associated with the specific character string ID“IDS_SC_TONER_LIFE”.

Next, the display unit 36 displays the real data obtained by the secondobtainment unit 35 in the liquid-crystal display of the operation panel12 or the like (step S104). For example, the display unit 36 displaysthe aforementioned obtained character string data “remaining toneramount” in the liquid-crystal display.

As described thus far, according to the printer apparatus (resource datamanagement apparatus) and the resource data management method of thisembodiment, the resource data can be managed in package units when thecharacter string data is updated, even in the case where, for example,character string data has been replaced, character string data of a newlanguage has been added, or the like. As a result, the effort and costinvolved when a designer resets the resource data packages can beeliminated, which makes it possible to update the resource data in aflexible manner. In other words, in this embodiment, although the numberof packages and the location information thereof can be understood fromthe config data, the real data within the packages cannot be understood,and furthermore, the address information of packaged resource datacannot be understood from that resource data. By employing such aconfiguration, it is acceptable to amend only the number of pieces ofpackaged resource data (the number of packages) and the addressinformation in the config data when the resource data is to beadded/deleted in package units.

In addition, the character string data can be read out based on thelatest updated resource data packages in the storage unit 31 byreferring to the resource data table created by the resource data tablecreation unit 32 rather than the resource data table set as a default.Here, by setting the timing at which the resource data table creationunit 32 creates the resource data table to, for example, when thereceiving unit 33 receives the specific package ID and the specificcharacter string ID, or when a resource data stored in the storage unit31 is updated, or when the printer apparatus 10 is turned on, the latestresource data table can be created and used when the printer apparatus10 is used.

Variations

Although an exemplary embodiment of the invention has been describedthus far, the invention is not intended to be limited to theaforementioned embodiment; many variations, additions, and omissions canbe made by those skilled in the art without departing from the essentialspirit and scope expressed by the aspects of the invention.

For example, the resource data in the embodiment can be configured so asto have two types of packages, or a first type resource data package inwhich the character string data location information associated with thecharacter string ID (data ID) indicates only the character string datalocation information contained within that resource data, and a secondtype resource data package in which at least one piece of locationinformation from the character string data location informationassociated with the character string ID indicates location informationwithin the character string data contained in another piece of resourcedata. In this case, to use an example of two packages, or a first typeresource data package (having a package ID of “PID1”) and a second typeresource data package (having a package ID of “PID2”), as shown in FIG.9, when a given piece of character string data is shared, the locationinformation associated with the corresponding character string ID in thesecond type resource data package can be assigned the package ID “PID1”and the character string ID “character string ID: 101” of the first typeresource data package.

As a result, it is not necessary to hold character string data that isshared by each language in the resource data of each individuallanguage, and it is instead acceptable to hold only the difference data;therefore, it is possible to suppress the data amounts of the resourcedata groups stored in the storage unit 31.

Furthermore, although the aforementioned embodiment describes an examplein which the resource data packages are stored in a memory or the likeinstalled within the printer apparatus 10, the invention is not limitedthereto; for example, as shown in FIG. 10, the resource data packagesmay be provided in a storage unit 21 of a removable storage medium (forexample, a USB memory or the like) 20. In this case, the defaultresource data package can be stored in the storage unit 31′ of theprinter apparatus 10, whereas the added resource data package can bestored in the storage unit 21 installed within the removable storagemedium.

Further still, although the aforementioned embodiment describes anexample of character string data, the invention is not limited thereto,and the invention can also be applied with, for example, font data, icondata, and help guidance display data. Although the character string dataserving as resource data is configured so as to contain mainly thecharacter string ID, the location information associated with thecharacter string ID, the number of characters, and the character stringdata, in the case where font data is used, the data is configured so asto contain a language-specific character code, location informationassociated with that character code, width/length information, andbitmap data. Meanwhile, in the case of icon data, the data is configuredso as to contain an icon ID, location information associated with theicon ID, width/length information, and bitmap data. Furthermore, in thecase of help guidance display data, the data is configured so as tocontain combined data including character string data and icon data.

Furthermore, although the aforementioned embodiment describes an examplein which a printer apparatus serves as the resource data managementapparatus, the invention is not limited thereto, and can be applied invarious apparatuses that require the ability to switch between multiplelanguage displays; the invention can therefore also be applied in, forexample, complex machines, digital cameras, and other such apparatuses.

Furthermore, although the resource data management apparatus 10 in theaforementioned embodiment is provided with elements in accordance withthe application of the apparatus, some of the elements provided in theresource data management apparatus 10 may be configured as a singleunit, or the single unit may be divided into multiple units.

Finally, although the aforementioned embodiment describes the resourcedata management apparatus 10 as being configured so as to includeelements that have respective corresponding processing functions, theinvention is not limited thereto, and the configuration may instead besuch that the elements are located on a network or in another devicethat is communicably connected to the resource data management apparatus10.

The entire disclosure of Japanese Patent Application No. 2010-091501,filed Apr. 12, 2010 is expressly incorporated by reference herein.

1. A resource data management apparatus comprising: at least one resource data package that is associated with a package ID and that stores a resource data set, the resource data set serving as a unit of management; a config data table that stores location information of each resource data package; and a resource data table creation unit that creates a resource data table storing the package ID and the location information of the resource data package, by referring to the resource data package and the config data table.
 2. The resource data management apparatus according to claim 1, wherein the resource data set includes one or more data IDs and real data corresponding to the one or more data IDs.
 3. The resource data management apparatus according to claim 2, further comprising: a receiving unit that receives a specific package ID and a specific data ID; a first obtainment unit that obtains location information of a resource data package corresponding to the specific package ID by referring to the created resource data table; a second obtainment unit that obtains real data corresponding to the specific data ID by referring to the resource data package corresponding to the specific package ID based on the obtained location information of the resource data package; and a display unit that displays the obtained real data.
 4. The resource data management apparatus according to claim 3, wherein the resource data set further includes location information within a package of real data associated with the data ID; and the second obtainment unit obtains real data corresponding to the location information within the package of the real data associated with the specific data ID by referring to the resource data package corresponding to the specific package ID based on the obtained location information of the resource data package.
 5. The resource data management apparatus according to claim 2, wherein the resource data table creation unit creates the resource data table when the receiving unit has received the specific package ID and the specific data ID.
 6. The resource data management apparatus according to claim 1, wherein the resource data table creation unit creates the resource data table when the resource data package has been updated or when the apparatus has been turned on.
 7. The resource data management apparatus according to claim 2, wherein the resource data package includes one or more data IDs and location information of real data associated with the one or more data IDs, and furthermore stores a second type resource data in which at least one piece of location information from among the pieces of location information of the real data associated with the one or more data IDs indicates location information of real data included in another resource data package.
 8. The resource data management apparatus according to claim 1, wherein the resource data package is stored in a storage device installed in the apparatus itself or in a storage medium that can be attached to/removed from the apparatus itself.
 9. The resource data management apparatus according to claim 1, wherein the resource data set is configured of at least one of a character string data set, a font data set, an icon data set, and a help guidance data set used in an image forming apparatus.
 10. A resource data management method comprising: storing at least one resource data package that holds a resource data set serving as a unit of management in association with a package ID, and a config data table that holds location information of each of the resource data packages; and creating a resource data table storing the package ID and the location information of the resource data package by referring to the resource data package and the config data table. 